txgbe-1.3.6.9(release time:2025/11/06)
[Bug]
- fix bug that when unicast or multicast promiscuous mode is enabled both on pf and one vf,the vf will
  receive the packets whose VLAN id is not the same as the VLAN of the VF.
  [Impact scenarios]:
  For instance, in this situation:
  ┌────────┐    ┌────────┐    ┌────────┐
  │        │    │        │    │        │
  │        │    │        │    │        │
  │     VF0├────┤VF1  VF2├────┤VF3     │
  │        │    │        │    │        │
  └────────┘    └────────┘    └────────┘
   VM1           VM2           VM3

  vf 0:  vlan 1000
  vf 1:  vlan 1000
  vf 2:  vlan 1001
  vf 3:  vlan 1001

  If we tcpdump on VF3, we see all the packets, even those transmitted
  on vlan 1000.

  This behavior prevents to bridge VF1 and VF2 in VM2, because it will
  create a loop: packets transmitted on VF1 will be received by VF2 and
  vice-versa, and bridged again through the software bridge.

  This patch remove the activation of VLAN Promiscuous when a VF enables the promiscuous mode. 
  However, Unicast Promiscuous is kept, so that a VF receives all packets that has the
  same VLAN, whatever the destination MAC address.
  PF will receive all the packtets which do not match any vfs.

  [severity]: high

- fix bug that if use command "ethtool -K rx-all on" to turn on rx-all flag, the promiscuous mode would be enabled.
  [Impact scenarios]:
  If this flag is on, the packets with other mac addresses would also be received. This is incorrect, it should receive
  all the bad FCS packets, flow control packets besides normal packets with the allowed mac address.
  [severity]: low
  
- fix bug that if the packet sent by kernel already has 2 vlan headers in its payload, the driver
  would make incorrect data parse. This would case hardware tx unit hangs.
  [Impact scenarios]:
  1. In the case of qinq mode, if turn off the tx VLAN offload by ethtool, the packets cannot be sent out.
  2. In the case of qinq mode in k8s container, the kernel would send the packet with 2 vlan headers in it 
     even if the tx VLAN offload is on. This would also cause the problem. 
  [severity]: middle

- fix bug that the tx packets with triple vlans would be dropped by hardware.
  [Impact scenarios]:
  when tx vlan offload is on, the tx packets with triple vlans would be dropped by hardware and cannot be sent out.
  [severtiy]: middle

- fix bug that there's call trace shows that double free WARN and/or a BUG in free_msi_irqs().
  [Impact scenarios]:
  when pcie hot reset flow and "ifconfig down" or xdp_setup are running at the same time, there's call trace
  printed out waring that double free irq. 
  [severity: high]

- fix bug that after enabling sriov firstly and pf promisc mode secondly, and then set vlan port over pf port, 
  the pf port dropped the unmatched vlan id packets.[AMLITE-464]
  [Impact scenarios]:
  executing following commands in sequence:
  echo 1>/sys/class/net/enp25s0f0/device/sriov numvfs
  ip link set dev enp25s0f0 vf 0 trust on
  ifconfig enp25s0f0 promisc
  ip link add link enp25s0f0 name enp25s0f0.101 type vlan id 101
 
  the pf port would drop the vlan packcets with mismatched vlan id. For example, it would drop the packet with vlan 100. 
  [severity: middle]

- fix bug that rx multicast count is not right when sriov is enabled.[SAP-338]
  when sriov is enabled, pf rx multicast count is equal to pf rx multicast + all vfs rx multicast. It's incorrect.
  [severity: low]

[New feature]
- add driver load parameter to support tx unidirectional mode.
    
[Optimization]
- Optimize the pcie hot reset flow to avoid do multiple times unexpectedly [SAP-377]
- Optimize the log dumping on the port reporting error. [AMLITE-470]

[Compatibility]
- add support for redhat-9.6 5.14.0-570.49.1.el9_6.x86_64 kernel
- add support for Ubuntu-25.04
- add support for sw_64

txgbe-1.3.6.8(release time:2025/08/04)
- optimize delayed-releasing tx skbs/buffers mechanism.
  [Impact scenarios]: 
  Some applications like pktgen, which require memory reuse, need driver to release tx skb as soon as possible.
  [severity]: middle

txgbe-1.3.6.7(release time:2025/06/05)
- fix bug that vf mac address conflict.[jira:AMLITE-383]
  [Impact scenarios]: 
  When SR-IOV is enabled, if two VFs associated with the same PF are configured with duplicate MAC addresses, 
  one VF might randomly fail to receive unicast traffic targeted at the shared MAC.
  [severity]: high 

- fix bug that rx buffer page allocation failure would cause kernel panic [jira: SAP-362]
  [Impact scenarios]: 
  when there's no enough memory in the system, rx buffer page allocation may fail. This would cause kernel panic.
  [severity]: high
  
- fix bug that command "ethtool -m dev hex on offset n length n" may fail to read the eeprom contents.[jira: SAP-366]
  [Impact scenarios]: 	
  when use command "ethtool -m dev hex on offset n length n", it may return uncorrect eeprom contents. 
  [severity]: low

- cause software interrupt periodly to ensure rings are cleaned. [jira:SAP-362]
  [serverity]: low

- add support for rhel-6.5
- add support for sles-11.3 sles-11.4

known unresolved issues:
1. CPU reaches 100% when sending packets with tool 'pktgen'.[jira:AMLITE-390]
  
txgbe-1.3.6.6(release time:2025/04/15)
- fix bug of changing the number of descriptors may cause kernel crash with very limited amounts of RAM.
- fix bug of local time can not be synchronized to server with ptp4l command if kernel version is higher than 5.0.0.
- fix bug of mac table addition and deletion logic when SR-IOV is enabled.
- optimize the time consumption of the 'ethtool -m' command.

txgbe-1.3.6.5(release time:2025/03/13)
- fix bug on kunpeng920. On kunpeng920, smmu would report event 0x10 occasionally if smmu is on.
  The packet data would be tampered with occasionally if smmu is off.
- fix bug of miscounting skb pagecount when rx skb buffer cannot allocated successfully.    
- add support for redhat9.5
- add support for uos 1070

known unresolved issues:
1. Local time can not be synchronized to server with ptp4l command if kernel version is higher than 5.0.0.

txgbe-1.3.6.4(release time:2024/10/26)
- support ubuntu24.04 
- allow VFs to receive all packets with vlan tags in all-multicast mode
- fix bug that binding/unbinding the port repeatedly would cause kernel call trace in some new os kernel versions. 

txgbe-1.3.6.3(release time:2024/09/27)
- fix bug of parsing IPv6 extention header in tx ptype encoding, tso and csum functions.
- fix bug of parsing the IPIP tunnel packet with IPx over IPv6 mode.  
- fix bug on vxlan-gpe tunnel packet with internel protocol is neither IP/IPv6 nor TEB 
- fix bug that fail to add/delete vxlan6/geneve6 port. This would cause
  hw cannot parse geneve6 packet as a tunnel packet and cannot verify internel L4CS correctly.
- fix bug which causes ocp ncsi card link down when driver loaded.
- optimize the reset flow when hw cannot work properly.
- add dac cable detected automatically.when dac cable is inserted, change hw mode from
  sfi to kr mode.
- add debug method by turning on desc check. use ethtool command to turn on/off desc check and ring dump when error detected.
- add debug info of dumping skb and tx data buffer when tx unit hang detected or desc check error detected.
  use ethtool command to turn on/off the debug info.
- add ethtool msglvl to turn on/off kr debug messages. 
  ethtool -s ethx msglvl to enable hw_msg level can open kr debug messages, hw_msg is 0x2000.

txgbe-1.3.6.2(release time:2024/09/09)
- fix checksum issues for L4 protocols other than TCP/UDP/SCTP.

known unresolved issues:
1. SCTP Tx checksum offload bug
2. For IPIP tunnel with type sit or ip6tnl, TCP and UDP are unreachable

txgbe-1.3.6(release time:2024/07/09)
- add support for ethtool -c set adaptive rx/rx usecs/tx-frames-irq.
- add supportfor ethtool set pf rss params when sriov is enabled.
- add support for set vf mac with zero_ether_addr.
- add support for vf trust setting.
- add support for marvell external phy phy powerup and powerdown.
- add support for ether type flow director.
- add support for get lldp status by mailbox.
- add support for multi_rss.
- add support for setting vlan ctag features will also set vlan stag features, such as insert, strip and filter.
- add support for adding netdev_uc_addr over 64 for docker.
- update kr trainning flow.
- set flow control xon to default off.
- update mtu configuration flow to takes the maximum of pf_mtu and vf_mtu.
- revert ethtool -i firmware version to running version, when update firmware, will show both.
- fix tso didn't take effect in centos7.
- fix ethtool -t loopback test fails when the multi-speed sfp links to 1000M and veto on.
- fix ip link show and tx 802.1ad bug.
- fix handling of NAPI budget when multiple queues are enabled per vector in net_console mode.
- fix get lldp flag wrong when driver probe.
- fix occasionally null pointer bug when enable sriov.
- fix only port 0 support wol.
- fix ethtool -x can't set hash key.
- fix vf can't support 4 queues when vf is less than or equal to 32.
- fix ethtool -l show max_combined wrong when sriov is enabled.
- fix ethtool -s set sgmii firmware autoneg off failed.
- fix replacing 1G sfp module to dual-speed sfp module, link speed is 1G.
- fix centos 7.2~centos 7.9 tx checksum not working in QinQ mode and TSO off.
- fix rx_csum_offload_errors not increasing when 802.1ad packets with checksum error are received. 
- fix a needless message is printed when deleting vxlan or geneve interface.
- fix kernel or os compiling errors:
	kernel-6.6
	kylinsec-server-3.4-5-dev-2202-192015 arrch64
	openEuler20.03-SP4
	sles-15.6-beta
	centos7.1
	kylinV10 with kernel version is 4.19.90-85.0.v2307.ky10.aarch64
	redhat-8.10
	kylinv4 with kernel version is 4.4.131
known unresolved issues:
1. SCTP Tx checksum offload bug	
2. For IPIP tunnel with type sit or ip6tnl, TCP and UDP are unreachable

txgbe-1.3.5.1(release time:2023/12/22)
- add inspur oem svid 0x1ff9 support for "ethtool -p". Use speed led to blink.
- fix 1000Base-T sfp module can't linkup.

known unresolved issues:
1. SCTP Tx checksum offload bug
2. 'flow_control_xon' count issue in 'ethtool -S'
3. Load txgbe, and then unload txgbe, plug the cable to the other port, ncsi is unreachable
4. A needless message is printed when deleting vxlan or geneve interface

txgbe-1.3.5(release time:2023/10/30)
- add suppport for firmware which can use i2c to access sfp module
- add aer error type debug infomation
- add new feature: xdp
- add interface to show fw version on vf port
- add support for 8021ad vlan hw offload in vf.
- add macor PCIE_RECOVER, RECOVER_CHECK, DIS_COMP_TIMEOUT in configuration file. 
  Turn on them as default.
- add cpu arch or pcie upstream type checking to determine whether to do pcie recovery
  when pcie errors occur.
- limit the number of descriptor to be multiple of 128
- upgrade the kr training flow. 
- Remove default fec set in kr mode, make pcs auto detection.
- set i2c speed to standard mode 100KHZ
- read firmware version from from flash instead of shadow ram
- Do not do pcie recovery when sriov enabled
- Add HAVE_NETDEV_XMIT_MORE macro to avoid redefintion of netdev_xmit_more in kylin_v10 4.19.90
- fix bug that when using optical to electrical module, loading driver 
  would cause the link status of ncsi card to be down/up.
- fix bug that when using optical to electrical module, unplugging module 
  and cable at the same time would not make link status change.
- fix bug of switching 1G fiber speed auto negotiation on/off by using "ethtool"
- fix bug that i2c failed to read from DAC's eeprom
- fix some minor bugs in ethtool -C, -S, -t
- fix bug on tunnel port setting fuction to support kernel version >= 5.9
- fix compile warning on sles 11.3 and 11.4
- fix bug that insmod driver with param "max_vfs" will call NULL pointer

known unresolved issues:
1. SCTP Tx checksum offload bug
2. 'flow_control_xon' count issue in 'ethtool -S'
3. Load txgbe, and then unload txgbe, plug the cable to the other port, ncsi is unreachable
4. A needless message is printed when deleting vxlan or geneve interface

txgbe-1.3.4(release time: 2023/04/19)
- support redhat 8.7 and 9.1
- support ubuntu 14.04
- support kylinV10 Desktop, KylinV10 sp1,sp2, KylinV10_x86_testv3
- fix bug that "ethtool" shows half duplex when link is down which is not supported.
- fix bug that the link cannot be up when changing speed from 10G to 1G if veto bit is set.
- fix bug that setting speed to 100M would assign wrong advertised speed.
- fix but that calling txgbe_ioctl read/write method would cause kernel panic when accesssing internel phy.
- fix bugs related veto bit set.
- fix bugs that Inspur OCP Card can't link up due to firmware and driver access phy at the same time
- fix bugs of ECC error reset flow.
- Add support for QAX 10G Optical to electrical module
- optimiaze driver code.

known unresolved issues:
1. SCTP Tx checksum offload bug

txgbe-1.3.3(release time: 2022/11/25)
- support centos 8.6 and centos 9.0 of x86 arch 
- support linux 5.18.1
- support openEuler 22.03 and openEuler 4.19.208
- support uos ulec 20
- support ubuntu 16.10
- support centos 6.5-6.10 
- support suse 11.3
- fix bug of showing phy link mode by "ethtool ethX"
- fix bug when using sfp-1g-cu optical module, driver does not get the correct phy link status. 
- fix bug that when the number of the enabled vfs is 30+, 
  the vf driver would be installed failed on the latter vf devices.
- fix bug in SRIOV enable/disable flow
- fix bug that the number of RSS queues can be incorrectly set larger than the number of cpus
- fix bug that using "make modules_install" can not depmod driver in some os
- fix bug that when do reboot looping test, the driver may occasionally access invalid address.
- fix bug that turning off rx checksum hw offload would lead to incorrect vxlan hw offload.
- fix bug that when execute "echo 1 > /sys/class/.../sriov_numvfs", the system will hang.
- fix bug in self diagnostic test by "ethtool -t".
- fix bug that vf receive hash rule does not work.
- fix bug that vf promisc mode does not work right.  
- Add customize led control on oem ssid 0x0085/0x0075/0x0084 device
- Add initramfs update in Makefile 
- add support for switching on DISABLE_PACKET_SPLIT
- make limitation so that command "ethtool -f" can upgrade flash only once.
- add support for getting/setting fw lldp enable/disable status feature by using command "ethtool --show-priv-flags"
- add MACRO switch "TXGBE_RECOVER_CHECK" and "TXGBE_DIS_COMP_TIMEOUT" in configure file
- add pcie aer status print infomation and regroup TXGBE_PCIE_RECOVER macro
- add support for autoneg on/off switch by using "ethtool -s" when sfp is in 1G speed
- add tx multicast and broadcast statistic count showing by using "ethtool -S"
- enable flow director feature when compiling driver with "make kylin" 
- add support for "ip link show" and "ip link set" for vf port.
- add lan reset to tx timeout and clean tx irq flow.

known unresolved issues:
1. SCTP Tx checksum offload bug

txgbe-1.3.2(release time: 2022/06/02)
- fix bug of pcie recovery flow
- add pcie recovery flow on/off switch in configure file
- fix bug of vxlan/geneve hw offload feature. 
  Add support for vxlan/geneve port number setting in hardware register.
- add support for oem ssid and svid.
- add inspur oem ssid 0x0075 support for "ethtool -p". Use speed led to blink.
- add flash unlock when upgrading image  
- fix bug when in kr mode, core dumping will occassionally happen while os is booting up.
- make LRO enable by default
- fix kernel or os compiling errors:
	suse15sp3
	suse12sp5
	centos8.5 x86
	centos7.3-7.6
	
known unresolved issues:
1. SCTP Tx checksum offload bug

txgbe-1.3.1(release time: 2022/01/04)
- fix bug of vxlan hw offload implementation on centos 7.
- fix bug of geneve dst port error setting when enable geneve hw offload.
- fix bug of macvlan vf. After adding macvlan, vf cannot add to bridge 1.
- fix bug of advertise speed error showing by "ethtool -s".
- fix compiling errors in centos8.5

txgbe-1.3.0(release time: 2021/11/15)
- fix compiling error on kernel-realtime os
- fix compiling error on centos 7.0
- fix bug of the case when two vfs are with the same mac address, ping command would fail.
- fix bug of "ip link set vf max tx rate speed"     
- fix bug of the case that link down event in kr mode may occasionally cause kernel call trace in kr mode,  
- roll back max mtu size to 9414
- change flow director default mode from perfect mode to 
  signature mode so that queue vectors can be bound to cpus automatically.
- add FEC support in kr mode
- add support for led and polarity configuration in firmware.
- add NETDEV_F_HW_CSUM feature support
- turn on/off led light when execute "ifconfig up/down"

txgbe-1.2.3
- fix pcie-recover flow
- fix flow director udp port match function bug
- fix bug of "ethtool -f" 
- make mtu max supported size to 9710
- add ITR options selection in configure file
- fix kernel or os compiling errors:
	kernel5.10.49
	centos 8.4
	centos 7.1 
	suse12.1

txgbe-1.2.2(release time: 2021/05/27)
- fix bug of autonegoation between KR board and botong switch chip
- add support for "ethtool -N xxx ... action"
- add support for kernel version 5.8.9
- add support for "ethtool -f xxx" to burn firmware
- fix bug of vf function in OCP card

txgbe-1.2.1(release time: 2021/01/22)
- fix bug of "ethtool -p" function with ocp card
- fix QinQ TCP/UDP packet traffic bug

known unresolved issues:
1. VXLAN IPv6 tso offload bug 
2. SCTP Tx checksum offload bug

txgbe-1.2.0(release time: 2020/12/21)
- adjust input parameters in configure file
- fix bug of mac related register configurations in kx4/kx mode
- fix speed change bug of marvell xaui phy when executing "ethtool -s ethName"

txgbe-1.1.18(release time: 2020/12/08)
- add cl72_prbs control
- fix bug of backplane down restart an73

txgbe-1.1.17(release time: 2020/11/26)
- add function which would check link status by polling mode. This can take less time while changing lanport in bond case.
- fix compiling errors on kylinFt,UOS and so on.
- add the function of turn on/off speed auto-negotiation in kr/kx mode by ethtool command
- add support for "ethtool -p" in xaui mode.
- add support for "ethtool -k rxhash on/off"
- add TX_EQ configuration set in kx mode

txgbe-1.1.16(release time: 2020/09/15)
- fix link setup flow during KR/KX4/KX board initialization.
- fix vxlan tso hw offload function.
- fix firmware VETO bit detection flow
- fix kernel or os compiling errors:
	centos7.1
	suse12.1
	NeoKylin6
	ubuntu17.10
	arm kylin v10
-add kylin related compiling options in configuration file.


txgbe-1.1.15(release time: 2020/08/28)
- make the default speed link mode to auto-negotiation in kr mode.
- uddate pci.ids file
- fix bug of showing queue list by executing "ethtool -S XXX" 
- add support for Linux kernel version up to 5.4
- fix bug of unstable traffic performance in sfi mode when running iperf on loongnix platform

txgbe-1.1.14(release time: 2020/08/20)
- add pcie recovery flow when pcie link hangs
- fix bug of ip link vf return

txgbe-1.1.13(release time: 2020/08/20)
- add support for mac to sgmii support
- fix bug of tcp traffic in vlan mode.
- add support for kr mode board.
- add support for NCSI.
- add support for wol
- add suppport for centos8.2 on ARM platform
- modify driver compiling options in Makefile

txgbe-1.1.12(release time: 2020/08/20)
- fix bug of mailbox communication between PF and VF
- add support for RSS hw offload feature in VF
- modify the default wol status to d
- add interface of getting the chip current temperature
- add support for kernel version of 5.3
- add suppport for centos7.5 on ARM platform
- fix compiling error on ubuntu16.04

txgbe-1.1.11(release time: 2020/08/20)
- fix compling error on ARM UOS platform

txgbe-1.1.10(release time: 2020/08/20)
- fix bug of offline test failure when executing "ethtool -t", adding support for internal loopback funtion
- add support for centos7.6 on ARM platform

txgbe-1.1.9(release time: 2020/08/20)
- fix bug of offline test failure when executing "ethtool -t"
- add support for new subsystemID 2050.

txgbe-1.1.8(release time: 2020/08/20)
- fix compiling error of kernel version 4.19
- fix bug of closing Flow director hw offload in FT platform to improve performance
- add limitation of the mtu size up to 9414
- remove compiling warnings
- add support for xaui mode board
- update Makefile to support driver compiliation on FT/SW(kylin)/SW(deepin) platform
- add support for "ethtool -p" to control led blink on expected lanport
- do performance optimazation on FT/SW platform
- fix compiling error on PowerPC

txgbe-1.1.7(release time: 2020/08/20)
- fix bug of cannot set rx/tx ring buff to 512
- fix bug of only executing "ifconfig down/up" after changing mtu size 
  can make the new mtu size take effect on centos 7.5/7.6 
- fix compling error on centso 7.6
 